<!DOCTYPE html>
<html>
<head>
		<meta charset="UTF-8" />
        <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> 
<title>Komentar terbaru</title>
<link href='http://under-88.blogspot.com/favicon.ico' rel='icon' type='image/x-icon'/>
<link href='https://plus.google.com/117690544352523175338' rel='author'/>
<link href='https://plus.google.com/117690544352523175338' rel='publisher'/>
<meta content="Blogger Tutorial Plus Free Blogger Templates,blogger tutorial, Blogger template, tips dan trik blog,SEO Blogger,javascript, css" name='keywords'/>
<meta content="demo tutorial blogger css jquery moderration plugin blog' name='description"/>

<style type="text/css">
* {margin:0px 0px;padding:0px 0px;}
body {
font:normal 11px Tahoma,Arial,Sans-Serif;
background-color:transparent;
}
ul.cm-outer {
font:11px/14px Tahoma,Verdana,Arial,Sans-Serif;
color:white;
-webkit-animation:fade 3s linear;
-moz-animation:fade 3s linear;
-ms-animation:fade 3s linear;
-o-animation:fade 3s linear;
animation:fade 3s linear;
}
ul.cm-outer img {
width:32px;
height:auto;
border:none;
}
ul.cm-outer li {
background-color:#444;
border:1px solid #555;
border-bottom:none;
padding:0px;
margin:0px 0px;
position:relative;
list-style:none;
}
ul.cm-outer li:last-child {border-bottom:1px solid #555 !important;}
ul.cm-outer li.recent-comment-admin {}
ul.cm-outer .face {
position:absolute;
top:0px;
bottom:0px;
left:0px;
width:32px;
padding:7px 7px;        
border-right:1px solid #555;
}
ul.cm-outer .post {
margin-left:48px;
padding:7px 7px;
}

ul.cm-outer .post i[rel="pre"] {
display:block;
word-wrap:normal;
white-space:pre;
overflow:auto;
background-color:#002B36;
padding:5px 7px;
font:normal 10px Tahoma,Verdana,Arial,Sans-Serif !important;
font-style:normal;
color:#999;
}
ul.cm-outer .post i[rel="code"] {
font:normal 11px Monaco,Monospace !important;
font-style:normal;
}

ul.cm-outer strong {
display:block;
margin-bottom:5px;
color:#777;
}
ul.cm-outer a {text-decoration:none;color:#5687B8;}
ul.cm-outer a:hover {color:#eee;text-decoration:underline;}
.recent-comment-body {
background-color:#3c3c3c;
padding:10px;
word-wrap:break-word;
overflow:hidden;
}
ul.cm-outer li div.recent-comment-admin {
position:relative;
border-left:2px solid #900;
}

@-webkit-keyframes fade {from {opacity:0;} to {opacity:1;}}
@-moz-keyframes fade {from {opacity:0;} to {opacity:1;}}
@-ms-keyframes fade {from {opacity:0;} to {opacity:1;}}
@-o-keyframes fade {from {opacity:0;} to {opacity:1;}}
@keyframes fade {from {opacity:0;} to {opacity:1;}}

</style>
<script type="text/javascript">
// Recent Comments blogger gadget by MS-potilas 2011
// see http://yabtb.blogspot.com/2011/11/return-of-better-recent-comments-gadget.html
var numRecentComments  = 77,
    numPerPost         = 77, // max comments per post (to try) or 0
    maxCommentChars    = 2000,
    maxPostTitleChars  = 0, // if 0, use full post title
    txtWrote           = '',
    txtMore            = 'Selengkapnya',
    txtTooltip         = '[title] - [date MM/dd/yy hh:mm]',
    txtAnonymous       = '', // empty, or Anonymous user name localized
// Variables [xxx] in texts:
// supports [title], [user], [date], [time], [datetime], [date format]
// format supports: yyyy=long year, yy=short year, MM=month(01-12), dd=monthday, hh=hour, mm=min, ss=sec
    getTitles          = true; // false faster
    trueAvatars        = true; // false faster
var urlMyAvatar        = 'https://lh4.googleusercontent.com/-8KRgV2fbe-o/AAAAAAAAAAI/AAAAAAAABlo/iPW0X1Y6M1k/s250-c-k/photo.jpg', // can be empty (then it is fetched) or url to image
    urlMyProfile       = 'http://www.blogger.com/profile/11256212643663337235',// set if you have no profile gadget on page
//
    urlAnoAvatar       = 'http://www.gravatar.com/avatar/00000000000000000000000000000000?d=mm&s=16',
    maxResultsPosts    = "&max-results=99999", // or for example "&max-results=100"
    maxResultsComments = "&max-results=99999", // or for example "&max-results=300"
// CONFIG END
    urlToTitle = {};

function replaceVars(text, user, title, date) {
        text = text.replace('[user]', user);
        text = text.replace('[date]', date.toLocaleDateString());
        text = text.replace('[datetime]', date.toLocaleString());
        text = text.replace('[time]', date.toLocaleTimeString());
        text = text.replace('[title]', title.replace(/\"/g, '&quot;'));
        var i = text.indexOf("[date ");
        if (i > -1) {
                var format = /\[date\s+(.+?)\]/.exec(text)[1];
                if (format != '') {
                        var txtDate = format.replace(/yyyy/i, date.getFullYear());
                        txtDate = txtDate.replace(/yy/i, date.getFullYear().toString().slice(-2));
                        txtDate = txtDate.replace("MM", String("0" + (date.getMonth() + 1)).slice(-2));
                        txtDate = txtDate.replace("mm", String("0" + date.getMinutes()).slice(-2));
                        txtDate = txtDate.replace("ss", String("0" + date.getSeconds()).slice(-2));
                        txtDate = txtDate.replace("dd", String("0" + date.getDate()).slice(-2));
                        //txtDate = txtDate.replace("dd", date.getDate());
                        txtDate = txtDate.replace("hh", String("0" + date.getHours()).slice(-2));
                        //txtDate = txtDate.replace("hh", date.getHours());
                        text = text.replace(/\[date\s+(.+?)\]/, txtDate)
                }
        }
        return text;
}
if (urlMyProfile == "") {
        var elements = document.getElementsByTagName("*");
        var expr = /(^| )profile-link( |$)/;
        for (var i = 0; i < elements.length; i++)
        if (expr.test(elements[i].className)) {
                urlMyProfile = elements[i].href;
                break;
        }
}

function getPostUrlsForComments(json) {
        for (var i = 0; i < json.feed.entry.length; i++) {
                var entry = json.feed.entry[i];
                var href;
                for (var k = 0; k < entry.link.length; k++) {
                        if (entry.link[k].rel == 'alternate') {
                                href = entry.link[k].href;
                                break;
                        }
                }
                urlToTitle[href] = entry.title.$t;
        }
}       

function showRecentComments(json) {
        var postHandled = {};
        var j = 0;
        if (numPerPost) {
                while (numPerPost < numRecentComments) {
                        for (var i = 0; i < json.feed.entry.length; i++) {
                                var entry = json.feed.entry[i];
                                if (entry["thr$in-reply-to"]) {
                                        if (!postHandled[entry["thr$in-reply-to"].href]) postHandled[entry["thr$in-reply-to"].href] = 1;
                                        else postHandled[entry["thr$in-reply-to"].href]++;
                                        if (postHandled[entry["thr$in-reply-to"].href] <= numPerPost) j++;
                                }
                        }
                        if (j >= numRecentComments) break;
                        numPerPost++;
                        j = 0;
                        postHandled = {};
                }
                if (numRecentComments == numPerPost) numPerPost = 0;
        }
        postHandled = {};
        j = 0;
        for (var i = 0; j < numRecentComments && i < json.feed.entry.length; i++) {
                var entry = json.feed.entry[i];
                if (numPerPost && postHandled[entry["thr$in-reply-to"].href] && postHandled[entry["thr$in-reply-to"].href] >= numPerPost) continue;
                if (entry["thr$in-reply-to"]) {
                        if (!postHandled[entry["thr$in-reply-to"].href]) postHandled[entry["thr$in-reply-to"].href] = 1;
                        else postHandled[entry["thr$in-reply-to"].href]++;
                        j++;
                        var href = '';
                        for (var k = 0; k < entry.link.length; k++) {
                                if (entry.link[k].rel == 'alternate') {
                                        href = entry.link[k].href;
                                        break;
                                }
                        }
                        if (href == '') {
                                j--;
                                continue;
                        }
                        var hrefPost = href.split("?")[0];
                        var comment = "";
                        if ("content" in entry) comment = entry.content.$t;
                        else comment = entry.summary.$t;
                        comment = comment.replace(/<br[^>]*>/ig, " ");
                        comment = comment.replace(/<\S[^>]*>/g, "");
                        var postTitle = "";
                        if (urlToTitle[hrefPost]) postTitle = urlToTitle[hrefPost];
                        else {
                                postTitle = hrefPost.split("/")[5].split(".html")[0].replace(/_\d{2}$/, "");
                                postTitle = postTitle.replace(/-/g, " ");
                                postTitle = postTitle[0].toUpperCase() + postTitle.slice(1);
                        }
                        if (maxPostTitleChars && postTitle.length > maxPostTitleChars) {
                                postTitle = postTitle.substring(0, maxPostTitleChars);
                                var indexBreak = postTitle.lastIndexOf(" ");
                                postTitle = postTitle.substring(0, indexBreak) + "...";
                        }

                        var authorName = entry.author[0].name.$t
                        var authorUri = ""
                        if (entry.author[0].uri && entry.author[0].uri.$t != "") authorUri = entry.author[0].uri.$t;

                        var avaimg = urlAnoAvatar;
                        var bloggerprofile = "http://www.blogger.com/profile/";
                        if (trueAvatars && authorUri.substr(0, bloggerprofile.length) == bloggerprofile) avaimg = entry.author[0].gd$image.src;
                        else {
                                var parseurl = document.createElement('a');
                                if (authorUri != "") {
                                        parseurl.href = authorUri;
                                        avaimg = 'http://www.google.com/s2/favicons?domain=' + parseurl.hostname;
                                }
                        }
                        if (authorUri == urlMyProfile && urlMyAvatar != "") avaimg = urlMyAvatar;
                        if (authorName == 'Anonymous' && txtAnonymous != '' && avaimg == urlAnoAvatar) authorName = txtAnonymous;
                        var imgcode = '<img title="' + authorName + '" src="' + avaimg + '" />';
                        if (authorUri != "") imgcode = '<a href="' + authorUri + '">' + imgcode + '</a>';

                        var clsAdmin = "";
                        if (authorName == 'Denddy Gustiana' || authorName == 'CSS Tutsplus') clsAdmin = " recent-comment-admin";

                        var datePart = entry.published.$t.match(/\d+/g); // assume ISO 8601
                        var cmtDate = new Date(datePart[0], datePart[1] - 1, datePart[2], datePart[3], datePart[4], datePart[5]);

                        var txtHeader = txtWrote;
                        if (txtWrote.indexOf('[') == -1) txtHeader = authorName + ' ' + txtWrote;
                        else txtHeader = replaceVars(txtHeader, authorName, postTitle, cmtDate);

                        var tooltip = replaceVars(txtTooltip, authorName, postTitle, cmtDate);

                        document.write('<li class="item' + clsAdmin + '">');
                        document.write('<div class="face">' + imgcode + '</div>');
                        if (comment.length < maxCommentChars) document.write('<div class="post"><strong><a href="' + authorUri + '" target="_blank">' + authorName + '</a> &#9658; <a href="' + href + '" target="_parent">' + tooltip + '</a></strong><div class="recent-comment-body' + clsAdmin + '">' + comment + '</div></div>');
                        else {
                                comment = comment.substring(0, maxCommentChars);
                                var indexBreak = comment.lastIndexOf(" ");
                                comment = comment.substring(0, indexBreak);
                                document.write('<div class="post"><strong><a href="' + authorUri + '" target="_blank">' + authorName + '</a> &#9658; <a href="' + href + '" target="_parent">' + tooltip + '</a></strong><div class="recent-comment-body' + clsAdmin + '">' + comment + '... <a href="' + href + '" target="_blank">' + txtMore + '</div></div>');
                                if (txtMore != "") {
                                        var moretext = replaceVars(txtMore, authorName, postTitle, cmtDate);
                                        document.write('');
                                }
                        }
                        document.write('</li>');
                }
        }
}
</script>

</head>
<body>
<script type="text/javascript">
if (getTitles) {
        document.write('<ul class="cm-outer">');
        document.write('<script type="text/javascript" src="http://under-88.blogspot.com/feeds/posts/summary?redirect=false' + maxResultsPosts + '&alt=json-in-script&callback=getPostUrlsForComments"></' + 'script>');
        document.write('<script type="text/javascript" src="http://under-88.blogspot.com/feeds/comments/default?redirect=false' + maxResultsComments + '&alt=json-in-script&callback=showRecentComments"></' + 'script>');
        document.write('</ul>');
}       
</script>
</body>
</html>
